package cn.javaquan.code.utils;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * 分页工具类
 *
 * @author chenshun/sunlightcs@gmail.com
 * @since 1.0.0
 */
@Data
public class PageUtils implements Serializable {

    private static final long serialVersionUID = 1L;

    /** 总记录数 */
    private int totalCount;

    /** 每页记录数 */
    private int pageSize;

    /** 总页数 */
    private int totalPage;

    /** 当前页数 */
    private int currPage;

    /** 列表数据 */
    private List<?> list;

    /**
     * 分页.
     * @param list 列表数据
     * @param totalCount 总记录数
     * @param pageSize 每页记录数
     * @param currPage 当前页数
     */
    public PageUtils(List<?> list, int totalCount, int pageSize, int currPage) {
        this.list = list;
        this.totalCount = totalCount;
        this.pageSize = pageSize;
        this.currPage = currPage;
        this.totalPage = (int) Math.ceil((double) totalCount / pageSize);
    }

}
